Video remixing is an application where multiple video recordings are combined in order to obtain a video mix that contains some segments selected from the plurality of video recordings. Video remixing, as such, is one of the basic manual video editing applications, for which various software products and services are already available. Furthermore, there exist automatic video remixing or editing systems, which use multiple instances of user-generated or professional recordings to automatically generate a remix that combines content from the available source content. Some automatic video remixing systems depend only on the recorded content, while others are capable of utilizing environmental context data that is recorded together with the video content. The context data may be, for example, sensor data received from a compass, an accelerometer, or a gyroscope, or GPS location data.
Video remixing is computationally a demanding task, especially when multiple recordings possible encoded into different, non-compatible file formats are used as source content. Obtaining a desired resultant video remix may be significantly delayed due to the bottlenecks of the video remixing system. Therefore, a more efficient video remixing system is needed.